/**   
 * @Title: UserServiceImplementation.java 
 * @Package cn.edu.cdtu.healthserver.service.impl 
 * @Description: TODO 
 * @author  
 * @date 
 * @version V0.0   
 */
package cn.edu.cdtu.healthserver.service.impl;

import java.util.List;

import cn.edu.cdtu.healthserver.dao.UserDao;
import cn.edu.cdtu.healthserver.dao.impl.UserDaoImplementation;
import cn.edu.cdtu.healthserver.domain.UserInformation;
import cn.edu.cdtu.healthserver.service.UserService;

/** 
 * @ClassName: UserServiceImplementation 
 * @Description: UserService功能的具体实现。
 * @author 
 * @date 
 *  
 */
public class UserServiceImplementation implements UserService {

	private UserDao userDao=new UserDaoImplementation();
	
	/* (non-Javadoc)
	 * <p>Title: CheckLogin</p> 
	 * <p>Description: 检验客户端的用户数据与数据库里的数据是否匹配。
	 * @param account
	 * @param password
	 * @return 
	 * @see cn.edu.cdtu.healthserver.service.UserService#CheckLogin(java.lang.String, java.lang.String)
	 */
	@Override
	public UserInformation CheckLogin(String account, String password) {
		// TODO Auto-generated method stub
		
		List<UserInformation> userInformationList=null;
		UserInformation userInformation = null;
		//从服务器中的数据库里获取所有用户信息。并把客户信息存入到List列表中。
		userInformationList=userDao.queryUser();
		//将List列表中的用户信息与来自客户端的用户信息进行比对，检验用户身份。
		for(UserInformation user:userInformationList)
		{
			if(user.getAccount().equals(account) && 
					user.getPassword().equals(password))
			{
				userInformation = user;
				break;
			}
		}
		return userInformation;
	}

	/* (non-Javadoc)
	 * <p>Title: getUserList</p> 
	 * <p>Description: 从服务器的数据库中获取用户所有数据，并存入List列表中。
	 * @return 
	 * @see cn.edu.cdtu.healthserver.service.UserService#getUserList()
	 */
	@Override
	public List<UserInformation> getUserList() {
		// TODO Auto-generated method stub
		return userDao.queryUser();
	}

	/* (non-Javadoc)
	 * <p>Title: addUser</p> 
	 * <p>Description: 添加新注册的用户信息到数据库中，并返回注册结果。
	 * @param user 
	 * @see cn.edu.cdtu.healthserver.service.UserService#addUser(cn.edu.scu.healthserver.domain.UserInformation)
	 */
	@Override
	public String addUser(UserInformation user) {
		// TODO Auto-generated method stub
		String resultString = null;
		if(userDao.add(user)){
			resultString = "注册用户成功！";
		}else{
			resultString = "注册用户失败！";
		}
		return resultString;
	}

	/* (non-Javadoc)
	 * <p>Title: updateUser</p> 
	 * <p>Description: 更新数据库信息。 
	 * @param user 
	 * @see cn.edu.cdtu.healthserver.service.UserService#updateUser(cn.edu.scu.healthserver.domain.UserInformation)
	 */
	@Override
	public String updateUser(UserInformation user) {
		// TODO Auto-generated method stub
		String resultString = null;
		if(userDao.update(user)){
			resultString = "用户更新成功！";
		}else{
			resultString = "用户更新失败！";
		}
		return resultString;
	}

	/* (non-Javadoc)
	 * <p>Title: deleteUser</p> 
	 * <p>Description: 删除用户信息的方法，并返回操作结果。
	 * @param user 
	 * @see cn.edu.scu.healthserver.service.UserService#deleteUser(cn.edu.scu.healthserver.domain.UserInformation)
	 */
	@Override
	public String deleteUser(UserInformation user) {
		// TODO Auto-generated method stub
		String resultString = null;
		if(userDao.delete(user)){
			resultString = "删除用户成功！";
		}else{
			resultString = "删除用户失败！";
		}
		return resultString;
	}

}
